#if !defined(_SSIMPLEVALUE_H)
#define _SSIMPLEVALUE_H

#include "SValue.h"

/**
 *   The abstract base class to store a simple variable.
 */
class DECLARATION_DLL SSimpleValue : public SValue
{
	public:

		/** Returs true because this variable is of simple type. */
		virtual bool IsSimpleType() const
		{
			return true;
		}

		/** Returns false because this variable is of simple type. */
		virtual bool IsComplexType() const
		{
			return false;
		}

		/**
		 * Returns a string representation of the value.
		 */
		virtual string ToString();

		/**
		 * Returns a string representation of the value in a specific format.
		 */
		virtual string ToString(string format);

};

#endif  //_SSIMPLEVALUE_H
